Human Resourcing Process API - Implementation Template

(0 reviews)

How to: Bulk load and concurrent processing for Organization

This template supports both the initial load and the subsequent delta loads. To just do the delta load, use a switch, based on the property isInitialLoadRequired. This property is defined in each environment’s configuration YAML file, and is set to “true” by default. If isInitialLoadRequired property is “true” and lastUpdatedTimeStamp in watermark is the default expression, then the Mule application will retrieve only the active organizations from Workday. If the need is only for delta loads, then set isInitialLoadRequired to false in each environment’s configuration YAML file.

Prerequisite

The organization type (OrganizationTypeID), such as "SUPERVISORY" and "COSTCENTER", has to be pre-defined inside the properties files. Following are some sample organization types provided in Workday.

resources/image-c2ad1699-c684-4de0-b76d-300208e7fafa.png

Sequence of the load

Due to hierarchical relationship among different entities, the data load needs to follow a specific sequence. Before loading the Employee data, please make sure that the Organization and Location data is loaded.

resources/image-f1256ded-67c0-4d5a-b216-0dee1783f059.png

To perform the initial bulk load and subsequent delta loads

This template queries Workday for all existing active organizations in the first scheduled run, and all for organization updates for subsequent delta runs that match the filtering criteria. The filtering criteria are based on manipulations starting from a transaction date range, record count to pagination.

resources/image-c3b1e796-6996-4d55-a16b-dd55c0a2e3f5.png

To perform delta loads only

This template queries Workday for all updates on the for organizations (including active and inactive) that match the filtering criteria from Organization in Workday to InternalOrganizationUnit in Salesforce. The filtering criteria is based on manipulations starting from a transaction date range, record count, and pagination.

Organization data retrieved from Workday is not organized in a hierarchical manner. This hierarchical relationship must be established using the ParentOrganizationId that is defined as a “Hierarchy” data type in Salesforce.

To achieve this, the Mule application will process the data from Workday in two steps:

  • Stage one: Once the organization data is fetched from Workday in a batch, load organization information into Salesforce without ParentOrganizationId and store OrganizationCode and Parent Organization’s OrganizationCode in Anypoint Object Store with a unique key. Repeat this for each batch of results from Workday.
  • Stage two: After loading organization data without ParentOrganizationId into Salesforce successfully, retrieve key-value pairs from Object Store, which contains the OrganizationCode and the Parent Organization’s OrganizationCode . Fetch Parent Organization's Id in Salesforce using Parent Organization's OrganizationCode and update Parent Organization's Id for each organization using the bulk upsert.

Reminder: Both Organization and Location data load must be completed before Employee data load. Employee data load process builds the relationship between employee and location/organization.


Reviews

TypeTemplate
OrganizationMuleSoft
Published by
MuleSoft Solutions
Published onApr 16, 2021
Asset overview

Asset versions for 1.0.x

Asset versions
VersionActions
1.0.1
1.0.0